package com.headwind.dao;

import com.headwind.dao.base.BaseDao;
import com.headwind.entity.HwUserBlog;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author : Headwind
 * @version : 1.0
 * @date : Created in 2020/8/27
 * @description : 用户博客持久化类
 */
@Repository
public class HwUserBlogDao extends BaseDao<HwUserBlog, Long> {

    @Autowired
    public HwUserBlogDao(JdbcTemplate jdbcTemplate) {
        super(jdbcTemplate);
    }

    /**
     * 保存用户博客
     *
     * @param userBlog 用户博客对象
     * @return 操作影响行数
     */
    public Integer insert(HwUserBlog userBlog) {
        return super.insert(userBlog, true);
    }

    /**
     * 根据主键删除用户博客
     *
     * @param id 主键id
     * @return 操作影响行数
     */
    public Integer delete(Long id) {
        return super.deleteById(id);
    }

    /**
     * 更新用户博客
     *
     * @param userBlog 用户博客对象
     * @param id       主键id
     * @return 操作影响行数
     */
    public Integer update(HwUserBlog userBlog, Long id) {
        return super.updateById(userBlog, id, true);
    }

    /**
     * 根据主键获取用户博客
     *
     * @param id 主键id
     * @return id对应的用户博客
     */
    public HwUserBlog selectById(Long id) {
        return super.findOneById(id);
    }

    /**
     * 根据查询条件获取用户博客列表
     *
     * @param userBlog 用户博客查询条件
     * @return 用户列表博客
     */
    public List<HwUserBlog> selectUserList(HwUserBlog userBlog) {
        return super.findByExample(userBlog);
    }
}
